class Solution {
public:
    string removeDuplicates(string s) {
        stack<int>st;
        string ret;
        for (int i = 0; i < s.length(); i++)
        {
            if (!st.empty() && st.top() == s[i])
            {
                st.pop();
            }
            else st.push(s[i]);
        }
        while (!st.empty())
        {
            ret.push_back(st.top()); st.pop();
        }
        reverse(ret.begin(), ret.end());
        return ret;
    }
};